Skip to content

fix(julia): keep list values when loading concore.params - #671

Open
bhuvan-somisetty wants to merge 2 commits into
ControlCore-Project:devfrom
bhuvan-somisetty:fix/julia-params-list-values
Open

bhuvan-somisetty wants to merge 2 commits into
ControlCore-Project:devfrom
bhuvan-somisetty:fix/julia-params-list-values

Conversation

@bhuvan-somisetty

Copy link
Copy Markdown

Fixes #670

julia's load_params!() was cutting list values at the first comma, so {'setpoint': [1.0, 2.0, 3.0]} came back as "[1.0". it now splits only on top-level commas and parses lists into Vector{Float64}, same as python. also handles key=[...] in the semicolon format. same change in concore.jl and concoredocker.jl, with tests for both.

also carries the ci fix from #662 (c++ tryparam test path + ubuntu-24.04 pin) since dev ci is red without it.

The comma-in-value tryparam test wrote concore.params to in/1/, but
load_params reads from inpath + "1/concore.params" (in1/), so it never
found the file.

ubuntu-latest now resolves to 26.04, where setup-python has no 3.9
build. Pin the Python test matrix to ubuntu-24.04 so 3.9 keeps running.

Signed-off-by: bhuvan-somisetty <somisettybhuvan5@gmail.com>
load_params!() split dict values on the first comma, so a list like
[1.0, 2.0, 3.0] became the string "[1.0". Split items at the top level
only and parse list values into Vector{Float64}, same as the Python side.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant